package com.shujia.java.day3;

import java.util.Scanner;

public class Demo20SuShu {
    public static void main(String[] args) {
        /**
         * 判断一个数是否是素数
         *
         */

        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();

        //标记这个数是不是素数
        boolean flag = true;

        for (int i = 2; i < n; i++) {
            //如果有一个数能陪整除，说明n不是苏数

            if (n % i == 0) {
                System.out.println(n + " 不是素数");
                System.out.println(n + " 被 " + i + " 整除");
                flag = false;
                break;//后面的数不需要再判断 直接退出循环
            }
        }

        if (flag && n != 1) {
            System.out.println(n + " 是一个素数");
        }

        if (n == 1) {
            System.out.println(n + " 不是一个素数");
        }

        /**
         * 时间复杂度
         *
         * 比较多个实现方法的运行时间  并不是一个准确的值   O(n**2) >  O(n)
         *
         * 通过循环次数
         *
         * 对于上面这种方法时间复杂度是O(n)
         *
         */

        System.out.println("============================================");

        /**
         * 偶数一定不是素数,除了2
         *
         * 时间复杂度  O(n/2)
         *
         */

        if ((n != 2 && n % 2 == 0) || n == 1) {
            System.out.println(n + " 不是一个素数");
        } else {

            boolean flag1 = true;
            for (int i = 3; i < n; i += 2) {
                //如果有一个数能陪整除，说明n不是苏数

                if (n % i == 0) {
                    System.out.println(n + " 不是素数");
                    System.out.println(n + " 被 " + i + " 整除");
                    flag1 = false;
                    break;//后面的数不需要再判断 直接退出循环
                }
            }

            if (flag1) {
                System.out.println(n + " 是一个素数");
            }
        }


    }
}
